#include "common_opr_all.h"
#include "json/json.h"

CommonOprJson::CommonOprJson()
{
}

CommonOprJson::~CommonOprJson()
{
}

void CommonOprJson::jsonstrformat(string &strInAndOut)
{
    Json::Reader reader;
    Json::Value root;
    if (!reader.parse(strInAndOut, root))//空字符串也会解析失败。write会有 \n 
    {
        return;
    }
    // auto it = std::remove(strInAndOut.begin(), strInAndOut.end(),'\n');
    // if (it != strInAndOut.end())
    // {
    //     strInAndOut.erase(it, strInAndOut.end());
    // }
    // strInAndOut.erase(remove(strInAndOut.begin(),strInAndOut.end(),'\n'),strInAndOut.end());//多个 \n 能去掉。 没有 \n 也不会崩
    strInAndOut.erase(remove(strInAndOut.begin(),strInAndOut.end(),'\n'),strInAndOut.end());
}

bool CommonOprJson::checkMember(const Json::Value &param, const string &memberName)
{
    if ( param.empty() || !param.isObject() || param.isArray())
    {
        return false;
    }

    return param.isMember(memberName);
}

